import { AnimationManager } from "src/Animation";
import { BaseData } from "./BaseData";
interface Input {
    animation: {
        states: string[];
    };
    BaseData: Partial<BaseData>;
}
/** 生命类，所有的生命都继承自这个类 */
export abstract class Live extends Laya.Sprite {
    data: BaseData;
    AnimationControl: AnimationManager<string>;
    constructor({ animation: { states }, BaseData: data }: Input) {
        super();
        this.AnimationControl = new AnimationManager(this, states);
        this.data = new BaseData(data);
    }
    abstract attack(): boolean;
    abstract patrol(): boolean;
}
